package com.intel.mapper;

import com.intel.model.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;

/**
 * Created by hduprince on 2017/12/1.
 */
@Mapper
public interface MedicineMapper {

    List<YmCMedicine> getYmCMedicineListLastDay(@Param("orgCode") String orgCode);

    List<YmCMedicine> getYmCMedicineListForUploadStatus(@Param("orgCode") String orgCode);

    List<YmCMedicine> getYmCMedicineListAll(@Param("orgCode") String orgCode);

    List<String> getOrgCodes();

    void updateResultSeq(YmCMedicine ymCMedicine);

    void updateUploadStatus(YmCMedicine ymCMedicine);

    //获取未上传的药品记录
    List<Medicine> getMedicineList(@Param("orgCode") String orgCode);

    //获取未上传的医疗器械
    List<Appendable> getAppendableList(@Param("orgCode") String orgCode);

    //获取未上传的食品
    List<Food> getFoodList(@Param("orgCode") String orgCode);

    //获取未上传的化妆品
    List<Cosmetics> getCosmeticsList(@Param("orgCode") String orgCode);

    Medicine getMedicine();

    //从药监下载药品信息插入标准库
    void insert(Medicine medicine);

    void update(Medicine medicine);

    //上传以后修改药品的状态
    void updateStatus(@Param("id") BigDecimal id, @Param("status") String status);

    //上传以后批量修改药品的状态
    void batchUpdateStatus(@Param("ids") String ids, @Param("status") String status);

    int getStandardMedicCount(@Param("medCode") String medCode);

    String getOriginId(@Param("corpName") String corpName);

    String getDosageId(@Param("type") String type);

    void insertOrigin(Origin origin);

}
